]> git.pld-linux.org Git - packages/gtk+3.git/blob - typeahead.patch
optional patch to restore old typeahead behavior in open dialog
[packages/gtk+3.git] / typeahead.patch
1 --- a/gtk/gtkfilechooserwidget.c
2 +++ a/gtk/gtkfilechooserwidget.c
3 @@ -1391,6 +1391,9 @@
4  {
5    GtkFileChooserWidget *impl = (GtkFileChooserWidget *) widget;
6    GtkFileChooserWidgetPrivate *priv = impl->priv;
7 +  gtk_widget_grab_focus (priv->browse_files_tree_view);
8 +  gboolean ret;
9 +  g_signal_emit_by_name (priv->browse_files_tree_view, "key-press-event", event, &ret);
10  
11    if (should_trigger_location_entry (impl, event))
12      {
13 @@ -1401,12 +1404,6 @@
14            return TRUE;
15          }
16      }
17 -  else if (gtk_search_entry_handle_event (GTK_SEARCH_ENTRY (priv->search_entry), (GdkEvent *)event))
18 -    {
19 -      if (priv->operation_mode != OPERATION_MODE_SEARCH)
20 -        operation_mode_set (impl, OPERATION_MODE_SEARCH);
21 -      return TRUE;
22 -    }
23  
24    if (GTK_WIDGET_CLASS (gtk_file_chooser_widget_parent_class)->key_press_event (widget, event))
25      return TRUE;
26 @@ -2476,7 +2473,7 @@
27  {
28    GtkFileChooserWidgetPrivate *priv = impl->priv;
29  
30 -  gtk_tree_view_set_search_column (GTK_TREE_VIEW (priv->browse_files_tree_view), -1);
31 +  gtk_tree_view_set_search_column (GTK_TREE_VIEW (priv->browse_files_tree_view), MODEL_COL_NAME);
32  
33    gtk_tree_view_column_set_sort_column_id (priv->list_name_column, MODEL_COL_NAME);
34    gtk_tree_view_column_set_sort_column_id (priv->list_time_column, MODEL_COL_TIME);
35 @@ -4388,6 +4385,7 @@
36    gtk_tree_view_set_model (GTK_TREE_VIEW (priv->browse_files_tree_view),
37                             GTK_TREE_MODEL (priv->browse_files_model));
38    update_columns (impl, FALSE, _("Modified"));
39 +  gtk_tree_view_set_enable_search (GTK_TREE_VIEW (priv->browse_files_tree_view), TRUE);
40    file_list_set_sort_column_ids (impl);
41    set_sort_column (impl);
42    profile_msg ("    gtk_tree_view_set_model end", NULL);
43 @@ -7148,10 +7146,6 @@
44  {
45    GList *l, *files, *files_with_info, *infos;
46    GFile *file;
47 -  gboolean select = FALSE;
48 -
49 -  if (gtk_tree_model_iter_n_children (GTK_TREE_MODEL (impl->priv->search_model), NULL) == 0)
50 -    select = TRUE;
51  
52    files = NULL;
53    files_with_info = NULL;
54 @@ -7179,8 +7173,6 @@
55    g_list_free_full (infos, g_object_unref);
56  
57    gtk_stack_set_visible_child_name (GTK_STACK (impl->priv->browse_files_stack), "list");
58 -  if (select)
59 -    gtk_widget_grab_focus (impl->priv->browse_files_tree_view);
60  }
61  
62  /* Callback used from GtkSearchEngine when the query is done running */
63 @@ -7498,6 +7490,7 @@
64    gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (priv->recent_model),
65                                          GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID,
66                                          GTK_SORT_DESCENDING);
67 +  gtk_tree_view_set_enable_search (GTK_TREE_VIEW (priv->browse_files_tree_view), TRUE);
68  }
69  
70  typedef struct
71 @@ -7515,7 +7508,7 @@
72  
73    gtk_tree_view_set_model (GTK_TREE_VIEW (priv->browse_files_tree_view),
74                             GTK_TREE_MODEL (priv->recent_model));
75 -  gtk_tree_view_set_search_column (GTK_TREE_VIEW (priv->browse_files_tree_view), -1);
76 +  gtk_tree_view_set_search_column (GTK_TREE_VIEW (priv->browse_files_tree_view), MODEL_COL_NAME);
77  
78    gtk_tree_view_column_set_sort_column_id (priv->list_name_column, -1);
79    gtk_tree_view_column_set_sort_column_id (priv->list_time_column, -1);
This page took 0.058243 seconds and 3 git commands to generate.